@echo off
echo 🚀 启动PP-OCR Docker服务...
echo.

REM 检查Docker是否安装
docker --version >nul 2>&1
if %errorlevel% neq 0 (
    echo ❌ Docker未安装或未启动！
    echo 💡 请先安装Docker Desktop: https://www.docker.com/products/docker-desktop
    pause
    exit /b 1
)

echo ✅ Docker已就绪
echo.

REM 拉取PP-OCR镜像（如果不存在）
echo 📦 检查PP-OCR镜像...
docker images paddlepaddle/paddleocr:latest-gpu-cuda10.1-cudnn7-dev | findstr paddleocr >nul
if %errorlevel% neq 0 (
    echo 📥 正在拉取PP-OCR镜像（首次运行需要下载，请耐心等待）...
    docker pull paddlepaddle/paddleocr:latest-gpu-cuda10.1-cudnn7-dev
    if %errorlevel% neq 0 (
        echo ❌ 镜像拉取失败！尝试CPU版本...
        docker pull paddlepaddle/paddleocr:2.6-cpu
    )
)

echo.
echo 🔄 启动PP-OCR服务容器...

REM 停止现有容器（如果存在）
docker stop ppocr-service 2>nul
docker rm ppocr-service 2>nul

REM 启动新容器
docker run -d ^
  --name ppocr-service ^
  -p 8866:8866 ^
  paddlepaddle/paddleocr:2.6-cpu ^
  python3 -m paddleocr --use_angle_cls=true --use_gpu=false --lang=ch

if %errorlevel% equ 0 (
    echo.
    echo ✅ PP-OCR服务已启动！
    echo 🌐 服务地址: http://localhost:8866
    echo 📝 API端点: http://localhost:8866/predict/ocr_system
    echo.
    echo 🔍 检查服务状态...
    timeout /t 5 /nobreak >nul
    curl -s http://localhost:8866/health >nul 2>&1
    if %errorlevel% equ 0 (
        echo ✅ 服务健康检查通过！
    ) else (
        echo ⚠️ 服务正在启动中，请稍等...
    )
    echo.
    echo 💡 现在可以测试OCR功能了！
) else (
    echo ❌ PP-OCR服务启动失败！
    echo 💡 请检查Docker日志: docker logs ppocr-service
)

echo.
pause